<?php
// On part du principe que notre formulaire nous a rénéré ce tableau en JSON
$data_array2 = array("titre"=> "C2i niveau 1 A",
              "description" => "Référentiel A du C2i niveau 1.",
              "domaines" =>array(
                  0 => array(
                      "titre" => "A1",
                      "description" => "Tenir compte du caractère évolutif des TIC",
                      "competences" => array(
                        0 => array(
                          "description" => "Être conscient de l’évolution constante des TIC et de la déontologie qui doit leur être associée et capable d’en tenir compte dans le cadre des apprentissages.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        1 => array(
                          "description" => "Prendre conscience des nécessaires actualisations du référentiel du C2i® niveau 1.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        2 => array(
                          "description" => "Travailler dans un esprit d’ouverture et d’adaptabilité (adaptabilité aux différents environnements de travail, échanges).",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        3 => array(
                          "description" => "Tenir compte des problèmes de compatibilité, de format de fichier, de norme et procédure de compression et d’échange.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        ),
                      ),
                  1 => array(
                      "titre" => "A2",
                      "description" => "Intégrer la dimension éthique et le respect de la déontologie ",
                      "competences" => array(
                        0 => array(
                          "description" => "Respecter les droits fondamentaux de l’homme, les normes internationales et les lois qui en découlent.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        1 => array(
                          "description" => "Maîtriser son identité numérique.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        2 => array(
                          "description" => "Sécuriser les informations sensibles - personnelles et professionnelles - contre les intrusions frauduleuses, les disparitions, les destructions volontaires ou involontaires.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        3 => array(
                          "description" => "Assurer la protection de la confidentialité.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        4 => array(
                          "description" => "Faire preuve d’esprit critique et être capable d’argumenter sur la validité des sources d’information.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        5 => array(
                          "description" => "Mettre en œuvre des règles de bons comportements, de politesse et de civilité.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        6 => array(
                          "description" => "Comprendre et s’approprier des chartes de comportement.",
                          "aide" =>"aide pour l'utilisateur"
                          ),
                        )
                      )
                  )
              );
$data_array = array("titre"=> "C2i niveau 1 B",
"description" => "Référentiel B du C2i niveau 1.",
"domaines" =>array(
    0 => array(
        "titre" => "B1",
        "description" => "S’approprier son environnement de travail",
        "competences" => array(
          0 => array(
            "description" => "Organiser et personnaliser son bureau de travail.",
            "aide" =>"aide pour l'utilisateur"
            ),
          1 => array(
            "description" => "Être capable, constamment, de retrouver ses données.",
            "aide" =>"aide pour l'utilisateur"
            ),
          2 => array(
            "description" => "Structurer et gérer une arborescence de fichiers.",
            "aide" =>"aide pour l'utilisateur"
            ),
          3 => array(
            "description" => "Utiliser les outils adaptés (savoir choisir le logiciel qui convient aux objectifs poursuivis).",
            "aide" =>"aide pour l'utilisateur"
            ),
          4 => array(
            "description" => "Maintenir (mise à jour, nettoyage, défragmentation…).",
            "aide" =>"aide pour l'utilisateur"
            ),
          5 => array(
            "description" => "Organiser les liens (favoris - signets) dans des dossiers.",
            "aide" =>"aide pour l'utilisateur"
            ),
          6 => array(
            "description" => "Se connecter aux différents types de réseaux (filaires et sans fil).",
            "aide" =>"aide pour l'utilisateur"
            ),
          ),
        ),
    1 => array(
        "titre" => "B2",
        "description" => "Rechercher l'information ",
        "competences" => array(
          0 => array(
            "description" => "Distinguer les différents types d’outils de recherche.",
            "aide" =>"aide pour l'utilisateur"
            ),
          1 => array(
            "description" => "Formaliser les requêtes de recherche.",
            "aide" =>"aide pour l'utilisateur"
            ),
          2 => array(
            "description" => "Récupérer et savoir utiliser les informations (texte, image, son, fichiers, pilote, applications, site…).",
            "aide" =>"aide pour l'utilisateur"
            ),
          )
        ),
      2 => array(
        "titre" => "B3",
        "description" => "Sauvegarder, sécuriser, archiver ses données en local et en réseau ",
        "competences" => array(
          0 => array(
            "description" => "Rechercher un fichier (par nom, par date, par texte…).",
            "aide" =>"aide pour l'utilisateur"
            ),
          1 => array(
            "description" => "Assurer la protection contre les virus.",
            "aide" =>"aide pour l'utilisateur"
            ),
          2 => array(
            "description" => "Protéger ses fichiers et ses dossiers (en lecture/écriture).",
            "aide" =>"aide pour l'utilisateur"
            ),
          3 => array(
            "description" => "Assurer une sauvegarde (sur le réseau, support externe…)..",
            "aide" =>"aide pour l'utilisateur"
            ),
          4 => array(
            "description" => "Compresser, décompresser un fichier ou un ensemble de fichiers/dossiers.",
            "aide" =>"aide pour l'utilisateur"
            ),
          5 => array(
            "description" => "Récupérer et transférer des données sur et à partir de terminaux mobiles.",
            "aide" =>"aide pour l'utilisateur"
            ),
          )
        ),
      3 => array(
        "titre" => "B4",
        "description" => "Réaliser des documents destinés à être imprimés  ",
        "competences" => array(
          0 => array(
            "description" => "Réaliser des documents courts (CV, lettre…).",
            "aide" =>"aide pour l'utilisateur"
            ),
          1 => array(
            "description" => "Élaborer un document complexe et structuré (compte rendu, rapport, mémoire, bibliographie...).",
            "aide" =>"aide pour l'utilisateur"
            ),
          2 => array(
            "description" => "Maîtriser les fonctionnalités nécessaires à la structuration de documents complexes (notes de bas de pages, sommaire, index, styles…).",
            "aide" =>"aide pour l'utilisateur"
            ),
          3 => array(
            "description" => "Intégrer les informations (images, fichiers, graphiques…).",
            "aide" =>"aide pour l'utilisateur"
            ),
          4 => array(
            "description" => "Traiter des données chiffrées dans un tableur (formules arithmétiques et fonctions simples comme la somme et la moyenne, notion et usage de la référence absolue), les présenter sous forme de tableau (mises en forme dont format de nombre et bordures) et sous forme graphique (graphique simple intégrant une ou plusieurs séries).",
            "aide" =>"aide pour l'utilisateur"
            ),
          5 => array(
            "description" => "Créer des schémas (formes géométriques avec texte, traits, flèches et connecteurs, disposition en profondeur, groupes d’objets, export sous forme d’image).",
            "aide" =>"aide pour l'utilisateur"
            ),
          )
        ),
      4 => array(
        "titre" => "B5",
        "description" => "Réaliser la présentation de ses travaux en présentiel et en ligne  ",
        "competences" => array(
          0 => array(
            "description" => "Communiquer le résultat de ses travaux en s’appuyant sur un outil de présentation assistée par ordinateur.",
            "aide" =>"aide pour l'utilisateur"
            ),
          1 => array(
            "description" => "Adapter des documents initialement destinés à être imprimés pour une présentation sur écran.",
            "aide" =>"aide pour l'utilisateur"
            ),
          2 => array(
            "description" => "Réaliser des documents hypermédias intégrant textes, sons, images fixes et animées et liens internes et externes.",
            "aide" =>"aide pour l'utilisateur"
            ),
          )
        ),
      5 => array(
        "titre" => "B6",
        "description" => "Echanger et communiquer à distance ",
        "competences" => array(
          0 => array(
            "description" => "le courrier électronique (en-têtes, taille et format des fichiers, organisation des dossiers, filtrage) ; ",
            "aide" =>"Utiliser à bon escient et selon les règles d’usage "
            ),
          1 => array(
            "description" => "les listes de diffusion (s’inscrire, se désabonner) ; ",
            "aide" =>"Utiliser à bon escient et selon les règles d’usage "
            ),
          2 => array(
            "description" => "les forums de discussion (modéré, non modéré) ;",
            "aide" =>"Utiliser à bon escient et selon les règles d’usage "
            ),
          3 => array(
            "description" => "le dialogue en temps réel ; ",
            "aide" =>"Utiliser à bon escient et selon les règles d’usage "
            ),
          4 => array(
            "description" => "les terminaux mobiles",
            "aide" =>"Utiliser à bon escient et selon les règles d’usage "
            ),
          )
        ),
      6 => array(
        "titre" => "B7",
        "description" => "Mener des projets en travail collaboratif à distance  ",
        "competences" => array(
          0 => array(
            "description" => "utiliser les outils d’un espace de travail collaboratif (environnement numérique de travail) ; ",
            "aide" =>"Travailler dans un environnement de travail collaboratif :"
            ),
          1 => array(
            "description" => "élaborer en commun un document de travail (assurer le suivi des corrections, ajouts et suppressions) ; ",
            "aide" =>"Travailler dans un environnement de travail collaboratif :"
            ),
          2 => array(
            "description" => "gérer différentes versions de documents partagés.",
            "aide" =>"Travailler dans un environnement de travail collaboratif :"
            ),
          )
        )
      )
    );
  // check session pour referentialData : switch Edit ou Add
  // check aussi un get_input GUID. Si c'est le cas, on est en Edit, on récupère
  // les infos de l'entité et on affiche en conséquence

  // A présent, il va falloir le stocker en base, pour ce faire, AJAX !
  $data = json_encode($data_array);
  // pour passer les sécurité de Elgg :
  $ts = time();
  $token = generate_action_token($ts);
  
  $access_id = 0;

  $access_label = elgg_echo('Acces');
  $access_input = elgg_view('input/access', array('internalname' => 'access_id', 'value' => $access_id));
?>
<script src="<?php echo $vars['url'] ?>mod/referential/views/default/js/jquery.referential.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function(){
    $(this).initReferential();
    var dataObj = new Object(<?php echo $data ?>);
    var dataStr = JSON.stringify(dataObj);
    // lorsque le bouton est cliqué
    $('#r_add').click(function () {
      $('.error').hide();
      // validation des champs du formulaire
      var title = $("input#main_title").val();
      if (title == "") {
        $("label#title_error").show();
        $("input#main_title").focus();
        return false;
      }
      var description = $("textarea#main_description").val();
      if (description == "") {
        $("label#description_error").show();
        $("textarea#main_description").focus();
        return false;
      }
      // si la validation se passe bien, on sérialise le contenu
      //var dataStr = $("#formEdit").serialize(); 
      
      // Ajax submit
      $.post("<?php echo $vars['url'] ?>action/referential/r_edit_a",
              {
                content : dataStr,
                title : title,
                description : description,
                __elgg_token : "<?php echo $token ?>",
                __elgg_ts : "<?php echo $ts ?>",
                access_id : 0 // L'accès est privé par défaut
              },
              function(data){
                $('#main').html("<div id='message'></div>");
                $('#message').html("<h2>Referential " + data.title + " sauvegardée</h2>")
                .append("<p>We will be in touch soon.</p>")
                .hide()
                .fadeIn(1500, function() {
                  $('#message').append("<img id='checkmark' src='images/check.png' />");
                });
              },
              "json"
            );
      return false;
    });
    $('#click').click(function() {
      $('#main').insertDomain();
    });
  });
</script>
<div id="referential_editor">
  <form id="formEdit" action="#">
    <fieldset id="main">
      <input type="hidden" value="115" name="guid" />
      <ol>
        <li class="left">  
          <label for="main_title">Titre</label>  
          <input id="main_title" name="main_title" class="text-input" type="text" />  
          <label class="error" for="main_title" id="main_title_error">This field is required.</label> 
        </li>
        <li class="right">  
          <label for="main_description">Description</label>  
          <textarea name="main_description" id="main_description" class="text-input" cols="65" rows="5"></textarea>
          <label class="error" for="main_description" id="main_description_error">This field is required.</label>
        </li>
        <li class="right">
          <input id="r_add" class="submit" type="submit" value="OK" />
        </li>
      </ol>
    </fieldset>
    <a href="#" id="click">click</a>
  </form>
</div>